﻿using System;
using System.Collections.Generic;
using System.Linq;
using System.Web;
using System.Web.UI;
using System.Web.UI.WebControls;
using negocios;
using publico;
using objetos;

namespace softsales.pagina.tributacao_cofins
{
    public partial class tributacao_cofins_formulario : System.Web.UI.Page
    {
        BLL_TB_TRIBUTACAO_COFINS b_tb_tributacao_cofins = new BLL_TB_TRIBUTACAO_COFINS();
        OBJ_TB_TRIBUTACAO_COFINS o_tb_tributacao_cofins = new OBJ_TB_TRIBUTACAO_COFINS();

        BLL_TB_IMPOSTO_CST_COFINS b_tb_imposto_cst_cofins = new BLL_TB_IMPOSTO_CST_COFINS();
        BLL_TB_LOG_ERRO b_tb_log_erro = new BLL_TB_LOG_ERRO();

        protected void Page_Load(object sender, EventArgs e)
        {
            if (PUB_SESSAO.Logado())
            {
                if (!IsPostBack)
                {
                    b_tb_imposto_cst_cofins.PreencheControle(DDL_ID_CST_COFINS, true);
                    

                    if (Request["id"] != null)
                    {
                        LBL_TITULO_PAGINA.Text = "Editar Tributação COFINS";
                        if (PUB_FUNCOES.ApenasNumero(Request["id"].ToString()))
                        {
                            Editar(Request["id"].ToString());
                        }
                    }
                    else
                    {
                        LBL_TITULO_PAGINA.Text = "Incluir Tributação COFINS";
                    }

                }
            }
        }

        private void Editar(string id)
        {
            try
            {
                o_tb_tributacao_cofins = b_tb_tributacao_cofins.SelecionarObjetoPorId(Convert.ToInt32(id));
                HF_ID.Value = id;
                TXT_DESC_IMPOSTO_COFINS.Text = o_tb_tributacao_cofins.desc_imposto_cofins.ToString();
                DDL_ID_CST_COFINS.SelectedValue = o_tb_tributacao_cofins.id_cst_cofins.ToString();
                TXT_VALOR_ALIQ_COFINS.Text = o_tb_tributacao_cofins.valor_aliq_cofins.ToString();
                TXT_VALOR_ALIQ_COFINS_ST.Text = o_tb_tributacao_cofins.valor_aliq_cofins_st.ToString();
            }
            catch (Exception ex)
            {

                b_tb_log_erro.IncluirLogErro(ex);
                Master.MSG_ALERTA("Erro ao tentar carregar formulário");
            }
           
        }

        protected void BTN_SALVAR_Click(object sender, EventArgs e)
        {
            try
            {
                string msg = string.Empty;
                o_tb_tributacao_cofins.desc_imposto_cofins = TXT_DESC_IMPOSTO_COFINS.Text;
                o_tb_tributacao_cofins.id_cst_cofins = DDL_ID_CST_COFINS.SelectedValue;
                o_tb_tributacao_cofins.valor_aliq_cofins = Convert.ToDecimal(PUB_FUNCOES.TrataDecimal(TXT_VALOR_ALIQ_COFINS.Text));
                o_tb_tributacao_cofins.valor_aliq_cofins_st = Convert.ToDecimal(PUB_FUNCOES.TrataDecimal(TXT_VALOR_ALIQ_COFINS_ST.Text));

                if (HF_ID.Value != string.Empty)
                {
                    o_tb_tributacao_cofins.id = Convert.ToInt32(HF_ID.Value);
                    b_tb_tributacao_cofins.Alterar(o_tb_tributacao_cofins);
                    msg = PUB_MENSAGEM.MSG_ALTERACAO;
                }
                else
                {                   
                    b_tb_tributacao_cofins.Incluir(o_tb_tributacao_cofins);
                    msg = PUB_MENSAGEM.MSG_INCLUSAO;
                }

                Master.MSG_ALERTA(msg, "default.aspx", false);

            }
            catch (Exception ex)
            {

                b_tb_log_erro.IncluirLogErro(ex);

                Master.MSG_ALERTA("Erro ao tentar salvar o formulário");
                
            }
        }

        protected void BTN_CANCELAR_Click(object sender, EventArgs e)
        {
            Response.Redirect("default.aspx", false);
        }
    }
}